package com.example.base.system.service;

import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.service.IService;
import com.example.base.excetion.GlobalExcetion;
import com.example.base.system.domain.SysLog;
import org.springframework.web.method.HandlerMethod;

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.util.List;
import java.util.Map;


/**
 * <p>
 *  服务类
 * </p>
 *
 * @author X.I.O
 * @since 2024-02-24
 */
public interface SysLogService extends IService<SysLog> {

    public SysLog saveSysLog(SysLog syslog) throws GlobalExcetion;

    public SysLog updateSysLogById(SysLog syslog) throws GlobalExcetion;

    public IPage<SysLog> page(Integer page, Integer pageSize) throws GlobalExcetion;

    public void operateSysLog(HttpServletRequest request, HttpServletResponse response, HandlerMethod handlerMethod,Exception ex);

    public List<Map<String,Integer>> getPastDaysTotal(String startDate,String endDate);

    public List<Map<String,Object>> getPast15DaysTotal();
}
